Computer with pressure-sensitive means, method of computer having a pressure-sensitive means and vibration means, method of using the same and recording medium for the method

ABSTRACT

A method and computer to provide control of vibrations of a controller used in video game machines provided with the controller. The method uses a computer having two or more controllers each of which has a pressure-sensitive unit and a vibration unit. Based on the output value from the pressure-sensitive unit of one of the controllers, vibration is caused in the vibration unit of the other controller, and based on the output value from the pressure-sensitive unit of the other controller, vibration is caused in the vibration unit of the first one of the controllers.

FIELD OF THE INVENTION

[0001] The present invention relates to a computer having a pressure-sensitive means and vibration means, method of using same and recording medium that records this method.

BACKGROUND OF THE INVENTION

[0002] A known example of a computer under consideration is the entertainment system, such as a game machine which is a typical example. Controllers that have vibration motors have been proposed as the controllers currently used for video game machines. Such controllers equipped with vibration motors, have various vibration motors built into handles held by the user in the left and right hands.

[0003] Such a controller is used for the feedback of various events during the game in the form of rotation of the vibration motors. Thereby, the user can feel a heightened sense of reality with these vibrations.

[0004] For example, a pressure-sensitive type controller was disclosed in the publication of examined Japanese utility model application No. JP-B-H1-40545, wherein pressure-sensitive output is provided as an input to a VCO (variable control oscillator) and the output of the VCO is used for repeated fire in a game.

SUMMARY OF THE INVENTION

[0005] It is an object of the present invention to provide a controller which would be able itself to control vibrations of the controllers used in the video game machines.

[0006] This and other objects of the present invention are attained by a recording medium upon which is recorded a computer-readable and executable program that performs processing by taking as instructions an output from a controller which has pressure-sensitive means and vibration means, wherein the software program comprises a processing program that, depending on the output of the controller, causes vibrations in the vibration means of the same controller or another controller.

[0007] The objects of the present invention are also attained by a method of using computer having two or more controllers which have pressure-sensitive means and vibration means, wherein, based on an output value from the pressure-sensitive means of one of said controllers, vibration is caused in the vibration means of the other of said controllers, and based on the output value from the pressure-sensitive means of the other of said controllers, vibration is caused in the vibration means of said first one of said controllers.

[0008] A computer according to the present invention comprises two or more controllers which have pressure-sensitive means and vibration means, first vibration-causing means which, based on the output value from the pressure-sensitive means of one of said controllers, cause vibration in the vibration means of the other of said controllers; and second vibration-causing means which, based on the output value from the pressure-sensitive means of the other of said controllers, cause vibration in the vibration means of said first one of said controllers.

BRIEF DESCRIPTION OF THE DRAWING

[0009]FIG. 1 is a schematic diagram of an example of connecting an entertainment system to a TV monitor to enable a user to enjoy game software or videos;

[0010]FIG. 2 is a diagram showing a pressure-sensed value-drive signal conversion table for selecting various drive signals corresponding to various pressure-sensed values;

[0011]FIG. 3 is a flowchart of a novel game process including a program for generating vibration depending on the pressure-sensed values;

[0012]FIG. 4 is a diagram showing a controller connected to the entertainment system;

[0013]FIG. 5 is a block diagram showing the entire entertainment system;

[0014]FIG. 6 is a top view of the controller.

[0015]FIG. 7 is an exploded perspective view of an embodiment of a second control part of the controller;

[0016] FIGS. 8A-8C are cross-sections through the second control part of FIG. 7 showing an example of the constitution of the second control part.

[0017]FIG. 9 shows an equivalent circuit for a pressure-sensitive device consisting of a resistor and conducting member;

[0018]FIG. 10 is a block diagram showing the main parts of the controller;

[0019]FIG. 11 is an exploded perspective view of a first control part of the controller;

[0020]FIG. 12 is a sectional view through the first control part of the controller of FIG. 11;

[0021]FIG. 13 diagrammatically shows the circuit configuration of a resistor;

[0022]FIG. 14 is a graph showing the characteristic of the analog signal (voltage) output from the output terminal of the resistor of FIG. 13;

[0023]FIG. 15 is a diagram showing the constitution wherein the analog signal (voltage) output from the resistor is provided as input to an A/D converter;

[0024]FIG. 16 is an exploded perspective view of an embodiment of a third control part of the controller;

[0025]FIG. 17 is a diagram showing the situation when the vibration generation system is disposed on the base sides of the first and second handle parts of the controller;

[0026]FIG. 18 is an exploded perspective view of the vibration generation system;

[0027]FIG. 19 is a perspective view of the vibration generation mechanism, consisting of a motor with an eccentric member attached to a driveshaft;

[0028]FIG. 20 is a perspective view of the controllers showing that vibrations of the motor are transmitted via the side walls to the handle parts, and thus vibrations are transmitted to the user's fingers.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0029] In the preferred embodiment, when a controller having a pressure-sensitive device is operated, vibration depending on the pressure-sense value output at that time is output from a different controller. Thereby, it is possible to provide a chance to create games with an even broader range of ideas than the games that use the repetition of ON operations of an ON/OFF switch or the continuous operation thereof.

[0030]FIG. 1 is a schematic diagram showing an example of connecting an entertainment system 500 to a TV monitor 408 to enable a user to enjoy game software. More specific examples of the entertainment system are shown in FIG. 4.

[0031] As shown in FIG. 1, a controller 200 which has buttons connected to pressure-sensitive devices and a vibration generator consisting of a motor and a rotating member which is attached to the shaft of the motor such that it is asymmetric to the center of the shaft is connected to the entertainment system 500 used for playing games or enjoying DVD video or other types of video images, and the video output terminals are connected to the television monitor 408.

[0032] Here, the analog output from the pressure-sensitive devices is converted by an A/D converter to digital values in the range 0-255 and provided to the entertainment system 500. In addition, based on a drive signal from the entertainment system 500, the aforementioned motor is driven and the aforementioned rotating member rotates, so that the vibration due to this rotation is transmitted to the player through the case of the controller. It is to be noted that the controller 200 equipped with a pressure-sensitive switch and the vibration generator will be described in detail below.

[0033] Here follows the description of the case of generating vibration by operation of the controller 200, with reference to FIGS. 2 and 3.

[0034] As an example, a head-to-head timing game which uses vibration generation will be now described. The game is played as follows. With two controllers 200 connected to the entertainment system 500, when one of the two players pushes a pressure-sensitive switch, vibration is generated on the other controller 200. If desired, when one of the two players pushes a pressure-sensitive switch, vibration may be generated on both controllers 200 (one's own and the other player's).

[0035] In this state, when one player pushes the pressure-sensitive switch of his/her controller 200, vibration is generated on the other player's controller 200. At this time, when vibration is generated on the controller 200 of the other player, the other player reacts and pushes the pressure-sensitive switch. The player is given points depending on the response speed at this time.

[0036]FIG. 2 shows a pressure-sensed value-drive signal conversion table for selecting a drive signal corresponding to each of the pressure-sensed values “0”-“255”. Using this table, each pressure-sensed value is converted to a drive signal. The drive signals P1-P255 corresponding to each of the pressure-sense values are supplied from the entertainment system 500 to the controller 200, and after conversion to analog signals by the A/D converter of the controller 200, they are given as drive-signals for the motor of the vibration generator. It is to be noted that this conversion table is an example, and other tables may also be used.

[0037] The present invention can offer the following alternative example. In the working example, the pressure-sense value as pushed by the user is used as is. However, in order to compensate for differences in body strength among users and how good their reflexes are, the maximum value of the user pressure-sensed value can be corrected to a maximum game pressure-sense value set in the program, and the intermediate values can be corrected proportionally. This type of correction is performed by preparing a correction table.

[0038] In addition, the user pressure-sensed value can be corrected based upon a known function and used as the game pressure-sensed value. This type of correction is performed by creating a correction table that is stored in an appropriate storage unit prepared in advance.

[0039] Moreover, the maximum value of the user pressure-sensed value rate of change may be corrected to the maximum game pressure-sensed value rate of change set in the program, and intermediate values can be proportionally corrected and used. This type of correction is performed by creating a correction table. For more details about this method, reference is made to the present inventors' Japanese patent application No. 2000-40257 and the corresponding PCT application JP ______ (Applicant's file reference No. SC00097WO00).

[0040] Next, with reference to FIG. 3, a novel game including a program for generating vibration depending on the pressure-sensed values will be described. The flowchart shown in FIG. 3 shows the process of a game including a program for generating vibration depending on pressure-sensed values.

[0041] The program for generating vibration depending on pressure-sensed values may be supplied either recorded alone on an optical disc or other recording medium, or recorded on the recording medium together with the game software as part of the game software. The program for generating vibration depending on pressure-sensed values is run by the entertainment system 500 and executed by its CPU.

[0042] In FIG. 3, as shown in Step S1, a decision is made as to whether or not an input of pressure-sensed data is present, and if “YES” is the response then the control process moves to Step S2, where a pressure-sensed value is acquired from controller 200.

[0043] The control process then moves to Step S3, where a decision is made as to whether or not the pressure-sensed value data of player A is nonzero, and if “YES” then the control procedure moves to Step S4, or if “NO” then the control procedure moves to Step S5.

[0044] In Step S4, a drive signal corresponding to the pressure-sensed value from the controller 200 of player A is read from the table shown in FIG. 2 and supplied to the controller 200 of player B. This drive signal is supplied to the motor of the vibration generator via the A/D converter of controller 200 of player B. Thereby, vibration is generated by the vibration generator of the controller 200 of player B, and this is transmitted to player B via the controller 200 of player B.

[0045] In Step S5, a decision is made as to whether the pressure-sense value data of player B is nonzero or not, and if “YES” then control moves to Step S6, or if “NO” then control procedure moves to Step S7.

[0046] In Step S6, a drive signal corresponding to the pressure-sense value from the controller 200 of player B is read from the table of FIG. 2 and supplied to the controller 200 of player A. This drive signal is supplied to the motor of the vibration generator via the A/D converter of the controller 200 of player A. Thereby, vibration is generated by the vibration generator of the controller 200 of player A, and this is transmitted to player A via the controller 200 of player A.

[0047] In Step S7, a decision is made as to whether or not to end the control, and if “YES” then the control procedure moves to Step S8, and if “NO” then control procedure moves back to Step S1.

[0048] In Step S8, a decision is made as to whether or not input of pressure-sensed data is present, and if “YES” then the control procedure moves to Step S9, and if “NO” then the control procedure moves to Step S12. Here, the decision of whether or not input of pressure-sensed data is present refers to the input from the player where a decision of “none” is made in Step S3 or Step S5. For example, if a decision is made in Step S3 or Step S5 that the input from player A is present, then player A is determined to be the side generating vibration, namely the attacking side, so in Step S8, a decision is made as to whether or not the input is present from player B, which is the side for which a decision will be made about the timing of pushing the button depending on the vibration generated, so that if “YES” then the control procedure moves to Step S9 and if “NO” then control moves to Step S12. It is noted that the decision of whether or not the input is present may be taken over a stipulated length of time, for example, 3 seconds or the like.

[0049] In Step S9, a stipulated value x is subtracted from the maximum value. The processing of this Step S9 has the meaning that the defending side, namely the player on the side reacting to the vibration generated by the other player, receives the maximum points decreased by the stipulated value x a number of times which is greater the slower the player's reactions are, thus decreasing the number of points earned.

[0050] In Step S10, a decision as to whether or not to end the processing is made, and if “YES” then the control processing moves to Step S11, and if “NO” then the control process goes back to Step S1. This decision can be based on whether one of the players A or B has reached a stipulated point score or whether one of the players has pushed a stipulated button, directing the game to end, or the like.

[0051] In Step S11, a screen indicating which player is the winner is displayed on the television monitor 408.

[0052] In Step S12, a stipulated value x is subtracted from the maximum value. This is intended to convert into points the response time from when the attacking player (A or B) sends vibration to the other player until the defending player (B or A) to which the vibration is sent pushes the button in response. When the response is slow, the Steps S8 and S12 will loop several times, so that x is repetitively subtracted from the maximum number of points, and the number of points earned is low.

[0053] As described above, in the present invention, a novel idea is that vibration depending on the pressure-sensed value is provided as an output from the other player's controller, and thus the scope of game creation can be broadened.

[0054] For example, in the afore-described example, while this example relates to a game that uses the screen to certain extent, by allocating various vibration patterns to the increase or decrease of pressure-sensed values or to the pressure-sensed values themselves, it is possible to transmit one's wishes to the other party through a combination of vibrations, so it is possible to develop new software that can be used by seeing- or hearing-impaired persons, for example.

[0055] Here follows an explanation of an embodiment of the present invention applied to the controller unit of a video game machine which is one example of a computer.

[0056]FIG. 4 is a diagram showing the controller 200 connected to entertainment system 500. The controller 200 is removably connected to the entertainment system 500, and the entertainment system 500 is connected to television monitor 408.

[0057] The entertainment system 500 reads the program for a computer game from recording media upon which that program is recorded, and by executing the program displays characters on the television monitor 408. The entertainment system 500 has also various built-in functions for DVD (Digital Versatile Disc) playback, CDDA (compact disc digital audio) playback and the like. The signals from the controller 200 are also processed as one of the aforementioned control functions within the entertainment system 500, and the content thereof may be reflected in the movement of characters and the like on the television monitor 408.

[0058] While this depends also on the content of the computer game program, controller 200 may be allocated functions for moving the characters displayed on the television monitor 408 in the directions up, down, left or right.

[0059] With reference to FIG. 5, here follows a description of the interior of the entertainment system 500 shown in FIG. 4. FIG. 5 is a block diagram of the entertainment system 500.

[0060] A CPU 401 is connected to RAM 402 and a bus 403, respectively. Connected to bus 403 are a graphics processor unit (GPU) 404 and an input/output processor (I/O) 409, respectively.

[0061] The GPU 404 is connected via an encoder 407 for converting a digital RGB signal or the like into the NTSC standard television format, for example, to a television monitor (TV) 408 as a peripheral. Connected to the I/O 409 are a driver (DRV) 410 used for the playback and decoding of data recorded upon an optical disc 411, a sound processor (SP) 412, an external memory 415 consisting of flash memory, controller 200 and a ROM 416 which records the operating system and the like. The SP 412 is connected via an amplifier 413 to a speaker 414 as a peripheral.

[0062] Here, the external memory 415 may be a card-type memory consisting of a CPU or a gate array and flash memory, which is removably connected via a connector 511 to the entertainment system 500 shown in FIG. 4.

[0063] The controller 200 is configured such that, when a plurality of buttons provided thereupon are pushed, it gives instructions to the entertainment system 500. In addition, the driver 410 is provided with a decoder for decoding images encoded based upon the MPEG standard.

[0064] The description will be made now as to how the images will be displayed on the television monitor 408 based on the operation of controller 200. It is assumed that data for objects consisting of polygon vertex data, texture data and the like recorded on the optical disc 411 is read by the driver 410 and stored in the RAM 402 of the CPU 401.

[0065] When instructions from the player via controller 200 are provided as an input to the entertainment system 500, the CPU 401 calculates the three-dimensional position and orientation of objects with respect to the point of view based on these instructions. Thereby, the polygon vertex data for objects defined by X, Y, Z coordinate values are modified variously. The modified polygon vertex data is subjected to perspective conversion processing and converted into two-dimensional coordinate data.

[0066] The regions specified by two-dimensional coordinates are so-called polygons. The converted coordinate data, Z data and texture data are supplied to the GPU 404. Based on this converted coordinate data, Z data and texture data, the GPU 404 performs the drawing process by writing texture data sequentially into the RAM 405. One frame of image data upon which the drawing process is completed is encoded by the encoder 407 and then supplied to the television monitor 408 and displayed on its screen as an image.

[0067]FIG. 6 is a top view of controller 200. The controller 200 consists of a unit body 201 on the top surface of which are provided first and second control parts 210 and 220, and on the side surface of which are provided third and fourth control parts 230 and 240 of the controller 200.

[0068] The first control part 210 of the controller is provided with a cruciform control unit 211 used for pushing control, and the individual control keys 211 a extending in each of the four directions of the control unit 211 form a control element. The first control part 210 is the control part for providing movement to the characters displayed on the screen of the television receiver, and has the functions for moving the characters in the up, down, left and right directions by pressing the individual control keys 211 a of the cruciform control unit 211.

[0069] The second control part 220 is provided with four cylindrical control buttons 221 (control elements) for pushing control. The individual control buttons 221 have identifying marks such as “◯” (circle), “×” (cross), “Δ” (triangle) and “□” (quadrangle) on their tops, in order to easily identify the individual control buttons 221. The functions of the second control part 220 are set by the game program recorded upon the optical disc 411, and the individual control buttons 221 may be allocated functions that change the state of the game characters, for example.

[0070] For example, the control buttons 221 may be allocated functions for moving the left arm, right arm, left leg and right leg of the character.

[0071] The third and fourth control parts 230 and 240 of the controller have nearly the same structure, and both are provided with two control buttons 231 and 241 (control elements) for pushing control, arranged above and below. The functions of these third and fourth control parts 230 and 240 are also set by the game program recorded upon the optical disc, and may be allocated functions for making the game characters do special actions, for example.

[0072] Moreover, two joy sticks 251 for performing analog operation are provided upon the unit body 201 shown in FIG. 6. The joy sticks 251 can be switched and used instead of the first and second control parts 210 and 220 described above. This switching is performed by means of an analog selection switch 252 provided upon the unit body 201. When the joy sticks 251 are selected, a display lamp 253 provided on the unit body 201 lights, indicating the state wherein the joy sticks 251 are selected.

[0073] It is to be noted that on unit body 201 there are also provided a start switch 254 for starting the game and a select switch 255 for selecting the degree of difficulty or the like at the start of a game, and the like.

[0074] In FIG. 6, as indicated by broken lines, the controller 200 is held by the left hand L and the right hand R and is operated by the other fingers, and in particular the thumbs L1 and R1 are able to operate most of the buttons on the top surface.

[0075]FIG. 7 and FIGS. 8A-8C are, respectively, an exploded perspective view and cross-sectional views showing the second control part of the controller.

[0076] As shown in FIG. 7, the second control part 220 consists of four control buttons 221 which serve as the control elements, an elastic body 222, and a sheet member 223 provided with resistors 40. The individual control buttons 221 are inserted from behind through insertion holes 201a formed on the upper surface of the unit body 201. The control buttons 221 inserted into the insertion holes 201 a are able to move freely in the axial direction.

[0077] The elastic body 222 is made of insulating rubber or the like and has elastic areas 222 a which protrude upward, and the lower ends of the control buttons 221 are supported upon the upper walls of the elastic areas 222 a. When the control buttons 221 are pressed, the inclined-surface portions of these elastic areas 222a flex so that the upper walls move together with the control buttons 221.

[0078] On the other hand, when the pushing pressure on the control buttons 221 is released, the flexed inclined-surface portions of these elastic areas 222 a elastically return to their original shape, pushing up the control buttons 221. The elastic body 222 functions as a spring means whereby control buttons 221 which had been pushed in by a pushing action are returned to their original positions. As shown in FIGS. 8A-8C, conducting members 50 are attached to the rear surface of the elastic body 222.

[0079] The sheet member 223 consists of a membrane or other thin sheet material which has flexibility and insulating properties. Resistors 40 are provided in appropriate locations on this sheet member 223 and these resistors 40 and conducting member 50 are each disposed such that they face one of the control buttons 221 via the elastic body 222. The resistors 40 and conducting members 50 form pressure-sensitive devices. These pressure-sensitive devices consisting of resistors 40 and conducting members 50 have resistance values that vary depending on the pushing pressure received from the control buttons 221.

[0080] To describe this in more detail, as shown in FIG. 8A-8C, the second control part 220 is provided with control buttons 221 as control elements, an elastic body 222, conducting members 50 and resistors 40. Each conducting member 50 may be made of conductive rubber which has elasticity, for example, and has a conical shape with its center as a vertex. The conducting members 50 are adhered to the inside of the top surface of the elastic areas 222 a formed in the elastic body 222.

[0081] In addition, the resistors 40 may be provided on an internal board 204, for example, opposite the conducting members 50, so that the conducting members 50 come into contact with resistors 40 together with the pushing action of the control buttons 221.

[0082] The conducting member 50 deforms depending on the pushing force on the control button 221 (namely the contact pressure with the resistor 40), so as shown in FIGS. 8B and 8C, the surface area in contact with the resistor 40 varies depending on the pressure. To wit, when the pressing force on the control button 221 is weak, as shown in FIG. 8B, only the area near the conical tip of the conducting member 50 is in contact. As the pressing force on the control button 221 becomes stronger, the tip of the conducting member 50 deforms gradually so the surface area in contact expands.

[0083]FIG. 9 is a diagram showing an equivalent circuit for a pressure-sensitive device consisting of a resistor 40 and conducting member 50. As shown in this diagram, the pressure-sensitive device is inserted in series in a power supply line 13, where the voltage V_(CC) is applied between the electrodes 40 a and 40 b. As shown in this diagram, the pressure-sensitive device is divided into a variable resistor 42 that has the relatively small resistance value of the conducting member 50, and a fixed resistor 41 that has the relatively large resistance value of the resistor 40. Among these, the portion of the variable resistor 42 is equivalent to the portion of resistance in the contact between the resistor 40 and the conducting member 50, so the resistance value of the pressure-sensitive device varies depending on the surface area of contact with the conducting member 50.

[0084] To wit, when the conducting member 50 comes into contact with the resistor 40, in the portion of contact, the conducting member 50 becomes a bridge instead of the resistor 40 and a current flows, so the resistance value becomes smaller in the portion of contact. Therefore, the greater the surface area of contact between the resistor 40 and conducting member 50, the lower the resistance value of the pressure-sensitive device becomes. In this manner, the entire pressure-sensitive device can be understood to be a variable resistor. Note that FIGS. 8A-8C show only the contact portion between the conducting member 50 and resistor 40 which forms the variable resistor 42 of FIG. 9, but the fixed resistor of FIG. 11 is omitted from FIG. 10.

[0085] In the preferred embodiment, an output terminal is provided near the boundary between the variable resistor 42 and fixed resistor 41, namely near the intermediate point of the resistors 40, and thus a voltage stepped down from the applied voltage V_(CC) by the amount the variable resistance is extracted as an analog signal corresponding to the pushing pressure by the user on the control button 221.

[0086] First, since a voltage is applied to the resistor 40 when the power is turned on, even if the control button 221 is not pressed, a fixed analog signal (voltage) V_(min) is provided as the output from the output terminal 40 c. Next, even if the control button 221 is pressed, the resistance value of this resistor 40 does not change until the conducting member 50 contacts the resistor 40, so the output from the resistor 40 remains unchanged at V_(min).

[0087] If the control button 221 is pushed further and the conducting member 50 comes into contact with the resistor 40, the surface area of contact between the conducting member 50 and the resistor 40 increases in response to the pushing pressure on the control button 221, and thus the resistance of the resistor 40 is reduced so the analog signal (voltage) output from the output terminal 40c of the resistor 40 increases.

[0088] Furthermore, the analog signal (voltage) output from the output terminal 40c of the resistor 40 reaches the maximum V_(max) when the conducting member 50 is most deformed.

[0089]FIG. 10 is a block diagram showing the main parts of the controller 200. An MPU 14 mounted on the internal board of the controller 200 is provided with a switch 18, an A/D converter 18 and two vibration generation systems. The analog signal (voltage) output from the output terminal 40c of the resistor 40 is provided as input to the A/D converter 16 and is converted to a digital signal.

[0090] The digital signal output from the A/D converter 16 is sent via an interface 17 provided upon the internal board of the controller 200 to the entertainment system 500 and the actions of game characters and the like are executed based on this digital signal.

[0091] Changes in the level of the analog signal output from the output terminal 40c of the resistor 40 correspond to changes in the pushing pressure received from the control button 221 (control element) as described above. Therefore, the digital signal outputted from the A/D converter 16 corresponds to the pushing pressure on the control button 221 (control element) from the user. If the actions of the game characters and the like are controlled based on the digital signal that has such a relationship with the pushing pressure from the user, it is possible to achieve smoother and more analog-like action than with control based on a binary digital signal based only on zeroes and ones.

[0092] The configuration is such that the switch 18 is controlled by a control signal sent from the entertainment system 500 based on a game program recorded on an optical disc 411. When a game program recorded on optical disc is executed by the entertainment system 500, depending on the content of the game program, a control signal is provided as output to specify whether the A/D converter 16 is to function as a means of providing output of a multi-valued analog signal, or as a means of providing a binary digital signal. Based on this control signal, the switch 18 is switched to select the function of the A/D converter 16.

[0093] Each of the two vibration generation systems consists of a driver 19 which has a D/A converter that takes drive signals supplied from the entertainment system 500 via an interface 17, converts them to analog signals and amplifies them, a motor 20 driven by the output thereof, and an eccentric member 21 attached to the drive shaft of the motor 20. The eccentric member 21 is of a different size. This is intended to generate vibrations by its rotation. The vibration generation systems are to be described in detail later.

[0094]FIGS. 11 and 12 that show an example of the configuration of the first control part of the controller.

[0095] As shown in FIG. 11, the first control part 210 includes a cruciform control unit 211, a spacer 212 that positions this control unit 211, and an elastic body 213 that elastically supports the control unit 211. Moreover, as shown in FIG. 12, a conducting member 50 is attached to the rear surface of the elastic body 213, and the configuration is such that resistors 40 are disposed at the positions facing the individual control keys 211 a (control elements) of the control unit 211 via the elastic body 213.

[0096] The overall structure of the first control part 210 has already been made public knowledge in the publication of unexamined Japanese patent application No. JP-A-H8-163672. The control unit 211 uses a hemispherical projection 212a formed in the center of the spacer 212 as a fulcrum, and the individual control keys 211 a (control elements) are assembled such that they can push on the resistor 40 side (see FIG. 12).

[0097] Conducting members 50 are adhered to the inside of the top surface of the elastic body 213 in positions corresponding to the individual control keys 211 a (control elements) of the cruciform control unit 211. In addition, the resistors 40 with a single structure are disposed such that they face the individual conducting members 50.

[0098] When the individual control keys 211 a which are control elements are pushed, the pushing pressure acts via the elastic body 213 on the pressure-sensitive devices consisting of a conducting member 50 and resistor 40, so that its electrical resistance value varies depending on the magnitude of the pushing pressure.

[0099]FIG. 13 is a diagram showing the circuit configuration of the resistor. As shown in this diagram, the resistor 40 is inserted in series in a power supply line 13, where a voltage is applied between the electrodes 40 a and 40 b. The resistance of this resistor 40 is illustrated schematically, as shown in this diagram, the resistor 40 is divided into first and second variable resistors 43 and 44.

[0100] Among these, the portion of the first variable resistor 43 is in contact, respectively, with the conducting member 50 that moves together with the control key (up directional key) 211 a for moving the character in the up direction, and with the conducting member 50 that moves together with the control key (left directional key) 211 a for moving the character in the left direction, so its resistance value varies depending on the surface area in contact with these conducting members 50.

[0101] In addition, the portion of the second variable resistor 44 is in contact, respectively, with the conducting member 50 that moves together with the control key (down directional key) 211 a for moving the character in the down direction, and with the conducting member 50 that moves together with the control key (right directional key) 211 a for moving the character in the right direction, so its resistance value varies depending on the surface area in contact with these conducting members 50.

[0102] Moreover, an output terminal 40c is provided intermediate between the variable resistors 43 and 44, and an analog signal corresponding to the pushing pressure on the individual control keys 211 a (control elements) is provided as output from this output terminal 40 c.

[0103] The output from the output terminal 40c can be calculated from the ratio of the split in resistance value of the first and second variable resistors 43 and 44. For example, if R1 is the resistance value of the first variable resistor 43, R2 is the resistance value of the second variable resistor 44 and V_(CC) is the power supply voltage, then the output voltage V appearing at the output terminal 40 c can be expressed by the following equation.

V=V _(cc)×R2/(R1+R2)

[0104] Therefore, when the resistance value of the first variable resistor 43 decreases, the output voltage increases, but when the resistance value of the second variable resistor 44 decreases, the output voltage also decreases.

[0105]FIG. 14 is a graph showing the characteristic of the analog signal (voltage) output from the output terminal of the resistor.

[0106] First, since a voltage is applied to the resistor 40 when the power is turned on, even if the individual control keys 211 a of the control unit 211 are not pressed, a fixed analog signal (voltage) V₀ is provided as output from the output terminal 40 c (at position 0 in the graph).

[0107] Next, even if one of the individual control keys 221 a is pressed, the resistance value of this resistor 40 does not change until the conducting member 50 contacts the resistor 40, and the output from the resistor 40 remains unchanged at V₀.

[0108] Furthermore, if the up directional key or left directional key is pushed until the conducting member 50 comes into contact with the first variable resistor 43 portion of the resistor 40 (at position p in the graph), thereafter the surface area of contact between the conducting member 50 and the first variable resistor 43 portion increases in response to the pushing pressure on the control key 221 a (control elements), and thus the resistance of that portion is reduced so the analog signal (voltage) output from the output terminal 40 c of the resistor 40 increases.

[0109] Furthermore, the analog signal (voltage) output from the output terminal 40 c of the resistor 40 reaches the maximum V_(max) when the conducting member 50 is most deformed (at position q in the graph).

[0110] On the other hand, if the down directional key or right directional key is pushed until the conducting member 50 comes into contact with the second variable resistor 44 portion of the resistor 40 (at position r in the graph), thereafter the surface area of contact between the conducting member 50 and the second variable resistor 44 portion increases in response to the pushing pressure on the control key 211 a (control elements), and thus the resistance of that portion is reduced, and as a result, the analog signal (voltage) output from the output terminal 40c of the resistor 40 decreases.

[0111] Furthermore, the analog signal (voltage) output from the output terminal 40c of the resistor 40 reaches the minimum V_(min) when the conducting member 50 is most deformed (at position s in the graph).

[0112] As shown in FIG. 15, the analog signal (voltage) output from the output terminal 40c of the resistor 40 is provided as input to an A/D converter 16 and converted to a digital signal. Note that the function of the A/D converter 16 shown in FIG. 15 is as described previously based on FIG. 10, so a detailed description shall be omitted here.

[0113]FIG. 16 is an exploded perspective view of the third control part of the controller.

[0114] The third control part 230 consists of two control buttons 231, a spacer 232 for positioning these control buttons 231 within the interior of the controller 200, a holder 233 that supports these control buttons 231, an elastic body 234 and an internal board 235, having a structure wherein resistors 40 are attached to appropriate locations upon the internal board 235 and conducting members 50 are attached to the rear surface of the elastic body 234.

[0115] The overall structure of the third control part 230 also already has been made public knowledge in the publication of unexamined Japanese patent application No. JPA-H8-163672, so a detailed description thereof will be omitted. The individual control buttons 231 can be pushed in while being guided by the spacer 232, the pushing pressure when pressed acts via the elastic body 234 on the pressure-sensitive device consisting of a conducting member 50 and resistor 40. The electrical resistance value of the pressure-sensitive device varies depending on the magnitude of the pushing pressure it receives.

[0116] It is noted that the fourth control part 240 has the same structure as that of the third control part 230 described above.

[0117] As shown in FIG. 17, the vibration generation system mechanism 22 is disposed on the base sides of the first and second handle parts 10 and 11 which are held by the fingers of the user when the controller 200 is held. As shown in FIG. 18, the vibration generation system mechanism 22 consists of a motor 20 driven by drive signals supplied from the entertainment system 500 and an eccentric member 21 attached to the driveshaft 20 a of the motor 20.

[0118] The eccentric member 21 is a metallic member having a large weight, and consists of a semicircular weight 21 a which is eccentric with respect to a mating hole 20 b which serves as the center of rotation when mated to the drive shaft 20 a. As shown in FIG. 19, the motor 20 with the eccentric member 21 attached to its drive shaft 20 a is attached to the inside of the first handle part 10, mated to a motor housing 20c in a mating indentation 23 formed as a rectangular tube on the first handle part.

[0119] With a vibration generation system mechanism 22 having such a structure, when the motor 20 is driven the eccentric member 21 rotates and the motor 20 vibrates as shown in FIG. 20, and these vibrations are transmitted to the first handle part 10 through the side walls 23 a which form the mating indentation 23, and thus the vibrations are transmitted to the fingers holding the first handle part 10.

[0120] Here, the vibration generation system mechanisms 22 and 22 disposed on the first and second handle parts 10 and 11 are constituted such that the states of generation of vibrations thereof are different. For example, the vibration generation system mechanisms 22 and 22 have different sizes of motors 20 and different eccentric members 21, so when driven by a fixed driving voltage, by making the speed of rotation different, the speed of rotation of the eccentric members 21 is made different, and the frequency of vibrations can be made to be different.

[0121] Due to the present invention, it is possible to control the vibrations themselves with the controller.

[0122] Moreover, due to the present invention, it is possible to provide vibrations that depend on the pressure-sense values as output from the other player's controller, so the scope of game creation can be made much broader compared to the existing systems. 

1. A recording medium on which is recorded a computer-readable and executable program that performs processing by taking as instructions an output from a controller which has pressure-sensitive means and vibration means, wherein said software program comprises: a processing program that, depending on the output of said controller, causes vibrations in the vibration means of said controller or another controller.
 2. The recording medium according to claim 1 , wherein a frequency of said vibrations varies depending on the rate of change per unit time of a value of the output of said controller.
 3. A method of using a computer having two or more controllers each having pressure-sensitive means and vibration means, the method comprising: causing vibration in the vibration means of another of said controllers based on an output value from the pressure-sensitive means of one of said controllers, and causing vibration in the vibration means of said one of said controllers based on the output value from the pressure-sensitive means of another of said controllers.
 4. The method of using a computer according to claim 3 , wherein in said step of causing vibration in vibration means based on the output value from said pressure-sensitive means, a magnitude of said vibration is determined depending on a magnitude of said output value.
 5. The method of using a computer according to claim 3 , wherein a frequency of said vibration varies depending on the rate of change per unit time of the output value of one of said controllers.
 6. A computer having two or more controllers each having pressure-sensitive means and vibration means, the computer comprising: means for, based on an output value from the pressure-sensitive means of one of said controllers, causing vibration in the vibration means of another of said controllers, and means for, based on the output value from the pressure-sensitive means of another of said controllers, causing vibration in the vibration means of said one of said controllers.
 7. The computer according to claim 6 , wherein said means of causing vibration in vibration means based on the output value from said pressure-sensitive means includes means of determining the magnitude of said vibration depending on the magnitude of said output value. 